The invention relates to functional testers and methods for isolating faults in printed circuit boards, and particularly to guided probe fault isolation of printed circuit boards containing multiple time bases operating at normal speeds in normal environments.
Functional test systems for testing printed circuit boards are well known in the art. In a typical diagnostic system, an operator is prompted to probe a certain node of the UUT. The probed results are compared with stored known good reference waveforms for such nodes, and on the basis of the results of such comparisons, a next affecting input is identified, which the operator then is prompted to probe. The assignee's tester Models GenRad 179.times., the TERADYNE L200 and others are illustrative of the state-of-the-art. U.S. Pat. No. 4,194,113 by Fulks et al. also is indicative of the state-of-the-art.
Prior guided probe algorithms typically utilize a technique in which a printed circuit board is probed or "traversed" or "tracked" from a known bad circuit output along a "fault tracking path" toward its inputs in a manner that achieves the greatest depth or "distance" through the circuit, with the fewest probing operations. Beginning with a known failing node, "affecting inputs" are probed to find a faulty affecting input. Once a faulty node is identified in this manner, the probing procedure is repeated for affecting inputs stemming from that faulty node. The probing or "searching" for a defective component terminates when one of two conditions are recognized. The first condition is that if a component is found whose output is faulty and all affecting inputs of that component are correct or fail later than the output, the device is assumed to be faulty. The second condition is that a loop is identified wherein all of the nodes in the loop are bad at the same time and all other affecting inputs of devices in the loop have been probed and found to be correct, or bad at a later time. The nodes in the loop are assumed to be the probable cause of the fault. The foregoing technique has led to excellent results in guided probe testing of a UUT (unit under test) the synchronization and timing of which is controlled by the tester.
However, as technology has rapidly advanced with printed circuit boards of UUTs containing microprocessors and multiple time bases, the foregoing guided probe measurement concepts have proven inadequate, especially for testing various printed circuit boards running "at-speed" (i.e., at normal operating speed) in the UUT. The prior guided probe test systems are unable to acquire meaningful repeatable probe data under these circumstances.
For example, the typical UUT shown in FIG. 1B illustates the problem. The microprocessor may have a first clock system operating at a first rate. The baud rate generator may operate at yet another speed, as may the character generator and the microcontroller interfacing the keyboard with the main bus. In such systems with multiple clock bases, use of the above-mentioned guided probe techniques containing precise clock times of occurrences of detected failures at each node becomes meaningless for loops that contain components which are clocked by different non-synchronized clock signals. Furthermore, variations in propagation delays of components from board to board can easily exceed a typical clock period of a UUT being operated at-speed.
As a result of inability of known guided probe systems to accurately diagnose UUTs operating at-speed with multiple clock bases, much more time-consuming, expensive test procedures are required. Consequently, the UUTs must be diagnosed "by hand", or else much more effect must be expended on development of test programs to make up for the deficiencies of the prior testers. Either alternative is time consuming and expensive.
Clearly, there is a need for an improved guided probe system that is capable of accurately diagnosing faulty nodes in a unit under test operating at-speed, with a minimum number of probing operations and with minimum complexity of hardware and software, even if multiple time bases are included in the UUT.